import { POST } from '@/api/helper'
import profile from '@root/profile'

const { cf } = profile.proxy

export default {
  /**
   * 获取系统参数分页列表
   * @param data
   * @param [data.configKey] {string} 配置标识
   * @param [data.configName] {string} 配置名称
   * @param data.pageNum {number} 当前页
   * @param data.pageSize {number} 每页条数
   * @param [data.type] {string} 配置类型
   * @returns {Promise<{code:number, message:string, data:{dataList: {configDesc:string, configKey:string, configName:string, configValue:string, enableFlag:string, id:string, type:string}[], pageNum:number, pageSize:number, pages:number, total:number}}>}
   */
  getSysConfigByPage: (data) => POST({ url: cf.prefix + '/cfSysConfig/getSysConfigByPage', data }),

  /**
   * 获取系统参数详细信息
   * @param data
   * @param data.id {number} 系统参数ID
   * @param data.enableFlag {number} 是否启用
   * @param data.updateTime {string} 更新时间
   * @returns {Promise<{code:number, message:string, data:{}}>}
   */
  sysConfigSwitch: (data) => POST({ url: cf.prefix + '/cfSysConfig/sysConfigSwitch', data }),

  /**
   * 更新系统参数
   * @param data
   * @param data.id {number} 系统参数ID
   * @param data.updateTime {string} 更新时间
   * @returns {Promise<{code:number, message:string, data:{}}>}
   */
  updateSysConfigById: (data) => POST({ url: cf.prefix + '/cfSysConfig/updateSysConfigById', data }),

  /**
   * 获取所有系统参数
   * @returns {Promise<{code: number, message: string, data: Array<IParameter>}>}
   */
  getAllSysConfig: () => POST({ url: cf.prefix + '/cfSysConfig/getAllSysConfig' }),

  /**
   * 根据配置键列表获取系统配置信息
   * @returns {Promise<{code: number, message: string, data: Array<IParameter>}>}
   */
  getCfSysConfigByKeys: (data) => POST({ url: cf.prefix + '/cfSysConfig/getCfSysConfigByKeys', data })
}
